home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Mail / pine3.92 / pine / osdep / canonicl < prev    next >
Text File  |  1993-07-15  |  772b  |  27 lines

  1. /*----------------------------------------------------------------------
  2.        Return canonical form of host name ala c-client (UNIX version).
  3.  
  4.    Args: host      -- The host name
  5.  
  6.  Result: Canonical form, or input argument (worst case)
  7.  ----*/
  8. char *
  9. canonical_name(host)
  10.     char *host;
  11. {
  12.     struct hostent *hent;
  13.     char hostname[MAILTMPLEN];
  14.     char tmp[MAILTMPLEN];
  15.     extern char *lcase();
  16.                                 /* domain literal is easy */
  17.     if (host[0] == '[' && host[(strlen (host))-1] == ']')
  18.       return host;
  19.  
  20.     strcpy (hostname,host);       /* UNIX requires lowercase */
  21.                                 /* lookup name, return canonical form */
  22.     return (hent = gethostbyname (lcase (strcpy (tmp,host)))) ?
  23.       hent->h_name : host;
  24. }
  25.  
  26.  
  27.